//// [tests/cases/conformance/jsdoc/declarations/jsDeclarationsFunctionKeywordPropExhaustive.ts] ////

//// [source.js]
function foo() {}
// properties
foo.x = 1;
foo.y = 1;

// keywords
foo.break = 1;
foo.case = 1;
foo.catch = 1;
foo.class = 1;
foo.const = 1;
foo.continue = 1;
foo.debugger = 1;
foo.default = 1;
foo.delete = 1;
foo.do = 1;
foo.else = 1;
foo.enum = 1;
foo.export = 1;
foo.extends = 1;
foo.false = 1;
foo.finally = 1;
foo.for = 1;
foo.function = 1;
foo.if = 1;
foo.import = 1;
foo.in = 1;
foo.instanceof = 1;
foo.new = 1;
foo.null = 1;
foo.return = 1;
foo.super = 1;
foo.switch = 1;
foo.this = 1;
foo.throw = 1;
foo.true = 1;
foo.try = 1;
foo.typeof = 1;
foo.var = 1;
foo.void = 1;
foo.while = 1;
foo.with = 1;
foo.implements = 1;
foo.interface = 1;
foo.let = 1;
foo.package = 1;
foo.private = 1;
foo.protected = 1;
foo.public = 1;
foo.static = 1;
foo.yield = 1;
foo.abstract = 1;
foo.as = 1;
foo.asserts = 1;
foo.any = 1;
foo.async = 1;
foo.await = 1;
foo.boolean = 1;
foo.constructor = 1;
foo.declare = 1;
foo.get = 1;
foo.infer = 1;
foo.is = 1;
foo.keyof = 1;
foo.module = 1;
foo.namespace = 1;
foo.never = 1;
foo.readonly = 1;
foo.require = 1;
foo.number = 1;
foo.object = 1;
foo.set = 1;
foo.string = 1;
foo.symbol = 1;
foo.type = 1;
foo.undefined = 1;
foo.unique = 1;
foo.unknown = 1;
foo.from = 1;
foo.global = 1;
foo.bigint = 1;
foo.of = 1;

//// [source.js]
function foo() { }
// properties
foo.x = 1;
foo.y = 1;
// keywords
foo.break = 1;
foo.case = 1;
foo.catch = 1;
foo.class = 1;
foo.const = 1;
foo.continue = 1;
foo.debugger = 1;
foo.default = 1;
foo.delete = 1;
foo.do = 1;
foo.else = 1;
foo.enum = 1;
foo.export = 1;
foo.extends = 1;
foo.false = 1;
foo.finally = 1;
foo.for = 1;
foo.function = 1;
foo.if = 1;
foo.import = 1;
foo.in = 1;
foo.instanceof = 1;
foo.new = 1;
foo.null = 1;
foo.return = 1;
foo.super = 1;
foo.switch = 1;
foo.this = 1;
foo.throw = 1;
foo.true = 1;
foo.try = 1;
foo.typeof = 1;
foo.var = 1;
foo.void = 1;
foo.while = 1;
foo.with = 1;
foo.implements = 1;
foo.interface = 1;
foo.let = 1;
foo.package = 1;
foo.private = 1;
foo.protected = 1;
foo.public = 1;
foo.static = 1;
foo.yield = 1;
foo.abstract = 1;
foo.as = 1;
foo.asserts = 1;
foo.any = 1;
foo.async = 1;
foo.await = 1;
foo.boolean = 1;
foo.constructor = 1;
foo.declare = 1;
foo.get = 1;
foo.infer = 1;
foo.is = 1;
foo.keyof = 1;
foo.module = 1;
foo.namespace = 1;
foo.never = 1;
foo.readonly = 1;
foo.require = 1;
foo.number = 1;
foo.object = 1;
foo.set = 1;
foo.string = 1;
foo.symbol = 1;
foo.type = 1;
foo.undefined = 1;
foo.unique = 1;
foo.unknown = 1;
foo.from = 1;
foo.global = 1;
foo.bigint = 1;
foo.of = 1;


//// [source.d.ts]
declare function foo(): void;
declare namespace foo {
    export let x: number;
    export let y: number;
    let _break: number;
    export { _break as break };
    let _case: number;
    export { _case as case };
    let _catch: number;
    export { _catch as catch };
    let _class: number;
    export { _class as class };
    let _const: number;
    export { _const as const };
    let _continue: number;
    export { _continue as continue };
    let _debugger: number;
    export { _debugger as debugger };
    let _default: number;
    export { _default as default };
    let _delete: number;
    export { _delete as delete };
    let _do: number;
    export { _do as do };
    let _else: number;
    export { _else as else };
    let _enum: number;
    export { _enum as enum };
    let _export: number;
    export { _export as export };
    let _extends: number;
    export { _extends as extends };
    let _false: number;
    export { _false as false };
    let _finally: number;
    export { _finally as finally };
    let _for: number;
    export { _for as for };
    let _function: number;
    export { _function as function };
    let _if: number;
    export { _if as if };
    let _import: number;
    export { _import as import };
    let _in: number;
    export { _in as in };
    let _instanceof: number;
    export { _instanceof as instanceof };
    let _new: number;
    export { _new as new };
    let _null: number;
    export { _null as null };
    let _return: number;
    export { _return as return };
    let _super: number;
    export { _super as super };
    let _switch: number;
    export { _switch as switch };
    let _this: number;
    export { _this as this };
    let _throw: number;
    export { _throw as throw };
    let _true: number;
    export { _true as true };
    let _try: number;
    export { _try as try };
    let _typeof: number;
    export { _typeof as typeof };
    let _var: number;
    export { _var as var };
    let _void: number;
    export { _void as void };
    let _while: number;
    export { _while as while };
    let _with: number;
    export { _with as with };
    let _implements: number;
    export { _implements as implements };
    let _interface: number;
    export { _interface as interface };
    let _let: number;
    export { _let as let };
    let _package: number;
    export { _package as package };
    let _private: number;
    export { _private as private };
    let _protected: number;
    export { _protected as protected };
    let _public: number;
    export { _public as public };
    let _static: number;
    export { _static as static };
    let _yield: number;
    export { _yield as yield };
    export let abstract: number;
    export let as: number;
    export let asserts: number;
    export let any: number;
    export let async: number;
    export let await: number;
    export let boolean: number;
    export let constructor: number;
    export let declare: number;
    export let get: number;
    export let infer: number;
    export let is: number;
    export let keyof: number;
    export let module: number;
    export let namespace: number;
    export let never: number;
    export let readonly: number;
    export let require: number;
    export let number: number;
    export let object: number;
    export let set: number;
    export let string: number;
    export let symbol: number;
    export let type: number;
    export let undefined: number;
    export let unique: number;
    export let unknown: number;
    export let from: number;
    export let global: number;
    export let bigint: number;
    export let of: number;
}
